Flight guidance and control interfaces for unmanned air vehicles

ABSTRACT

Systems, methods, and devices described in the present disclosure provide technology for detecting features of interest depicted in a video stream supplied by a camera-equipped drone and adjusting the flight pattern of the drone to increase the amount of time in which the features of interest are within the line of sight of the drone. In addition, the present disclosure provides technology for detecting when events of interest occur at the features of interest and alerting personnel when the events occur. In some examples, the technology of the present disclosure also determines a format for an alert (e.g., a push notification) based on an event type so that personnel who receive the alert are apprised of the urgency of the event based on the format.

BACKGROUND

Unmanned air vehicles (UAVs) can be used for many recreational,industrial, and military purposes. Drones and other types of UAVs may beequipped with cameras and may be controlled wirelessly via a remotecontrol. A user may steer a drone to a desired position so that a cameracoupled to the drone provides a desired aerial view of an area.

Quadcopters (i.e., quadrotors) are a type of drone that has becomepopular in the past decade as wireless communication technologies haveadvanced and high-resolution digital cameras have become smaller. Ingeneral, a quadcopter has four rotors. When a quadcopter is in flight,two of the rotors may spin clockwise and two of the rotors may spincounterclockwise. If all four rotors spin at the same angular velocity,the net torque about the yaw axis is zero. This allows quadcopters tofly without the tail rotor used in conventional helicopters. Quadcoptersmay also have a simpler flight control system that does not have toinclude the cyclic pitch control functionality found in conventionalhelicopters. Drones with other numbers of rotors (e.g., six or eight)also exist.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

In the accompanying figures similar or the same reference numerals maybe repeated to indicate corresponding or analogous elements. Thesefigures, together with the detailed description, below are incorporatedin and form part of the specification and serve to further illustratevarious embodiments of concepts that include the claimed invention, andto explain various principles and advantages of those embodiments.

FIG. 1 illustrates an example environment in which systems of thepresent disclosure may operate, according to one example.

FIGS. 2 a-2 b illustrate how systems described in this disclosure mayoperate during a fire incident, according to one example.

FIG. 3 provides an example list of incident types and example lists offeature types, according to one example.

FIG. 4 provides an example list of event types that may be associatedwith some of the feature types (e.g., window and door) shown in FIG. 3 ,according to one example.

FIG. 5 illustrates functionality for systems disclosed herein, accordingto one illustrative and non-limiting example.

FIG. 6 is a schematic diagram that illustrates a computing device 600according to some examples described in the present disclosure.

Skilled artisans will appreciate that elements in the figures areillustrated for simplicity and clarity and have not necessarily beendrawn to scale. For example, the dimensions of some of the elements inthe figures may be exaggerated relative to other elements to helpimprove understanding of embodiments of the present disclosure.

The system, apparatus, and method components have been represented whereappropriate by conventional symbols in the drawings, showing only thosespecific details that are pertinent to understanding the embodiments ofthe present disclosure so as not to obscure the disclosure with detailsthat will be readily apparent to those of ordinary skill in the arthaving the benefit of the description herein.

DETAILED DESCRIPTION OF THE INVENTION

Emergency-response personnel often have to respond to incidents in whichtime is of the essence and lives are at stake. Firefighters, forexample, may have little time to identify where people trapped in aburning building might be found, which entrances of the building can beused safely, which parts of the building may be in danger of collapsing,which direction the fire is moving throughout the building, and wherepotentially explosive materials may be stored in the building. Inanother example, police officers responding to a report of a crimetaking place in a building may wish to monitor entry points (e.g.,windows and doors) to detect when a suspect attempts to escape, pointfirearms at officers, dispose of potential evidence, or assaulthostages. In scenarios such as these, drones can provide aerial views ofbuildings or other types of structures where emergencies are takingplace. The aerial views provided by the drones can help emergencyresponders make more informed decisions during these types ofscenarios—decisions on which the lives of victims, responders, and evencriminal suspects may depend.

However, amidst the confusion and chaos that often accompanyemergencies, the incident commanders (ICs) who supervise and direct theefforts of emergency responders may be inundated with a deluge ofinformation amidst a dissonant chorus of agitated voices from victims,witnesses, responders, and dispatchers (e.g., via radio communicationdevices). The scene of an emergency may also be full of potentialdangers that have to be monitored closely. Drones may provide videofeeds through which a dispatcher, the incident commander, or anotheremergency responder may survey the scene of an emergency through severaldifferent viewing perspectives.

However, the incident commander will likely be obliged to prioritizewhich sources of information—audio, visual, and otherwise—will receivethe incident commander's attention at any given moment. As an emergencysituation unfolds, some events may rapidly elevate the urgency withwhich a particular information source should receive the incidentcommander's attention. For example, if a person suddenly appears at asecond-story window of a burning building, a drone's video stream inwhich that window is visible may suddenly merit the incident commander'simmediate attention. However, if the incident commander's attention isfocused elsewhere when the person appears at the window, valuable timemay elapse before the incident commander notices the person shown in thedrone's video stream. Such a delay may reduce the person's chance ofsurviving the incident. In another example, suppose an entrance throughwhich firefighters entered the burning building suddenly becomes blockedby burning debris. Even if the entrance can be seen on the drone's videofeed, an incident commander whose attention is focused on a differentinformation source at the moment when the entrance becomes blocked mightnot notice the blockage immediately. The delay between when the blockageoccurs and when the incident commander notices the blockage may reducethe odds that the incident commander will apprise the firefighters ofthe danger quickly enough for the firefighters to find an alternativeexit from the building.

In an incident such as a fire in a building, events occurring atfeatures such as doors, windows, fire escapes, gas meters, andweight-bearing wooden beams may merit an incident commander's immediateattention. If the fire is moving dangerously close to a gas meter, forexample, it may be prudent to direct the incident commander's attentionto the gas meter immediately. Similarly, if a weight-bearing wooden beamsuddenly begins to buckle, it may be prudent to direct the incidentcommander's attention to the wooden beam. However, in other types ofincidents, events occurring at features such as gas meters and woodenbeams may be much less likely to merit the incident commander'sattention. For example, if police officers are responding to a report ofa stolen vehicle seen in the underground parking garage of an apartmentcomplex, events occurring at a gas meter may be unlikely to merit theattention of the incident commander. Events at a feature such as avehicle access gate situated along a wall that surrounds the apartmentcomplex, on the other hand, may be very likely to merit the incidentcommander's attention (e.g., when a vehicle attempts to enter or exitthrough the gate).

Regardless of what type of incident is occurring, it may be prudent fora drone to devote more time to capturing features that are of interestfor that particular incident type in the video stream that the droneprovides and less time to capturing features that are not of interest.Furthermore, it may be prudent to alert an incident commander whencertain types of events occur at features of interest so that theincident commander's attention can be redirected without delay.

Thus, there exists a need for an improved technical method, device, andsystem for controlling flight patterns of camera-equipped drones duringpublic-safety incidents so that the video stream provided by thosedrones will focus on features that are pertinent to the types of thoseincidents. Furthermore, there exists a need for mechanisms that candetect events of interest that occur at features of interest and alertincident commanders or other personnel when such events merit immediateattention.

Systems, methods, and devices described in the present disclosureprovide technology for detecting features of interest depicted in avideo stream supplied by a camera-equipped drone and adjusting theflight pattern of the drone to increase the amount of time in which thefeatures of interest are within the line of sight of the drone. Inaddition, the present disclosure provides technology for detecting whenevents of interest occur at the features of interest and alertingpersonnel when the events occur. In some examples, the technology of thepresent disclosure also determines a format for an alert (e.g., a pushnotification) based on an event type so that personnel who receive thealert are apprised of the urgency of the event based on the format.

Further advantages and features consistent with this disclosure will beset forth in the following detailed description with reference to thefigures.

Referring now to the drawings, FIG. 1 illustrates an example environment100 in which systems of the present disclosure may operate, according toone example. The environment 100 includes a structure 110 (e.g., ahouse, an office building, a parking garage, a stadium, a theater, afactory, a silo, grain bin, a barn, a warehouse, a lighthouse, a windturbine, a windmill, a smokestack, a water tower, a house boat, arecreational vehicle (RV) or some other type of structure) and features111-116 which are associated with the structure. As used herein, theterm “features” may refer to any physical element that can be detectedin an image via one or more computer-vision techniques for objectdetection. Some features (e.g., windows and doors) may form an integralpart of the structure. In addition, some features (e.g., ladders, powerlines, propane tanks, satellite dishes, tool sheds, bushes, swimmingpools, and fences) may be affixed to the structure or may lie within thecurtilage of the structure. Furthermore, some features (e.g.,automobiles, fire hydrants, sewer lids, and telephone poles) may beassociated with the structure by being proximal to the structure (e.g.,positioned within a predefined radius of the structure, such as onehundred feet).

The environment 100 further includes public-safety response vehicle 120(e.g., a command van, a police car, an ambulance, or a fire engine). Asshown, the public-safety response vehicle 120 may include a computingdevice 121 that is communicatively coupled to input/output (I/O) devices122, including the electronic display 122 a (e.g., a flat-screenmonitor) The I/O devices 122 may include other elements (e.g., akeyboard, a mouse, and a microphone) which are not explicitly shown.Mobile devices 140 may be carried by public-safety responders (e.g.,police officers, firefighters, or paramedics). The environment 100further includes an unmanned aerial vehicle (UAV) 130 (e.g., a drone,such as a quadcopter) that is equipped with a digital camera (not shown)

The environment 100 further includes a wireless communication network150 that provides wireless services to communication devices within acoverage area of the wireless communication network 150, such as the UAV130, the mobile devices 140, and the computing device 121. Theenvironment 100 may further include servers 170 that are incommunication with the wireless communication network 150 via a datanetwork 160 (e.g., the Internet, an enterprise network, or apublic-safety agency network). The servers 170 may be in communicationwith the UAV 130, the mobile devices 140, and the computing device 121via the wireless communication network 150 and the data network 160.

In some examples, the public-safety response vehicle 120 may include adigital vehicular repeater system (DVRS) capable of relayingcommunications between the wireless communication network 150, the UAV130, and the mobile devices 140 and may include ultrasonic orultra-wideband transmitter/receiver circuitry capable of engaging inwireless communications with ultrasonic or ultra-widebandtransmitter/receiver circuitry of the UAV 130. The wirelesscommunication network 150, the data network 160, the servers 170, andany components thereof may be referred to as infrastructure elements.

The wireless communication network 150 may include a radio accessnetwork (RAN) comprising one or more wireless access nodes (not shown),such as an access point (AP), a base station, or an evolved Node B(eNodeB); the RAN may be in communication with a core network (notshown). The wireless communication network 150 may operate in accordancewith any wireless communication technology that supports dataapplications. For example, the wireless communication network 150 may bea public safety (PS) network that can utilize, for example, ThirdGeneration Partnership Project Long-Term Evolution (3GPP LTE), FifthGeneration Wireless (5G), Enhanced Voice-Data Optimized (EVDO),Institute of Electrical and Electronics Engineers (IEEE) 802.11 andvariants thereof (e.g., Wi-Fi), Project 25 (P25), Digital Mobile Radio(DMR), Land Mobile Radio (DMR), Terrestrial Trunked Radio (TETRA), etc.

When a public-safety incident occurs at the structure 110, thepublic-safety response vehicle 120, the UAV 130, and the public-safetyresponders associated with the mobile devices 140 may be dispatched to alocation of the structure 110 in response to a report of the incident(e.g., received via an emergency call). The UAV 130 may be configured toaim the digital camera at the structure 110 and transmit a video streamto the computing device 121 through a wireless signal sent via thewireless communication network 150 (or via Bluetooth®) while the UAV 130flies along a flight trajectory 132 that circumnavigates the structure110. The computing device 121 applies a video-analytics computer program121 a (e.g., a tool such as Voxel51®, the Rocket video analyticsplatform available through GitHub®, YOLO®, or some other video analyticsprogram) to the video stream to identify the features 111-116 of thestructure 110. In some examples, the process of applying thevideo-analytics computer program 121 a at the computing device 121 mayinvolve transferring data from the video stream to the servers 170 viathe wireless communication network 150 and the data network 160. Thecomputing device 121 may also make one or more function calls viaApplication Programming Interfaces (APIs) that are used by thevideo-analytics computer program 121 a and are sent to the servers 170.The servers 170 may perform computations dictated by the video-analyticscomputer program 121 a and transfer results of those computations backto the computing device 121. Persons of ordinary skill in the art willunderstand that some computations triggered by the video-analyticscomputer program 121 a may be performed using any combination ofprocessors and memory that are found in one or more of the computingdevice 121, the servers 170, and the UAV 130 without departing from thespirit and scope of this disclosure.

The video-analytics computer program 121 a, when applied to the videostream, identifies features associated with the structure, such as thefeatures 111-116. Once the features 111-116 have been identified, thecomputing device 121 identifies a list of feature types associated witha type of the incident. The computing device 121 compares the features111-116 to the list of feature types and determines if any of thefeatures 111-116 are instances of feature types included in the list.Each of the features 111-116 that is an instance of a feature typeincluded in the list is designated as a feature of interest. For thepurposes of this example, suppose that feature 111 is a feature ofinterest and features 112-116 are not features of interest.

Note that, in some scenarios, there may be more than one incident type.A building fire, for example, may also occur at the same time and placeas another type of incident (e.g., a robbery in which a robber commitsarson, a riot in which an angry mob sets fire to the building, etc.). Insuch scenarios, the computing device 121 may form an aggregate list offeature types by combining the respective lists of feature types foreach applicable incident type and use the aggregate list to determinewhich of the features 111-116 are of interest for any of the applicableincident types.

Also, in some examples, the user interface 123 that is displayed to anincident commander via the I/O devices 122 may allow the incidentcommander to designate some features as features of interest manuallyeven if those features are not instances of feature types included inthe list. The user interface 123 may also allow the incident commanderto designate some features as not being features of interest manuallyeven if those features are instances of feature types included in thelist.

Once the feature 111 has been designated as a feature of interest, thecomputing device 121 sends a wireless signal to the UAV 130 (e.g., viathe wireless communication network 150) instructing the UAV 130 toreduce the speed at which the UAV 130 moves along the flight trajectory132 when the features 111 is within a line of sight of the UAV 130. Inthis context, a feature of interest is within a line of sight of the UAV130 when there is a straight path from the UAV 130 to the feature ofinterest that is not obstructed by any physical object. The computingdevice 121 may further instruct the UAV 130 (e.g., via the wirelesscommunication network 150) to increase the speed at which the UAV 130moves along the flight trajectory 132 when no features of interest(e.g., feature 111) is within a line of sight of the UAV 130. Thecomputing device 121 may also instruct the UAV 130 to adjust theorientation of the digital camera whenever a feature of interest (e.g.,feature 111) is within the line of sight of the drone to maintain thefeature of interest within the field of view (FOV) of the digitalcamera. If the digital camera is mounted to the UAV 130 via a gimbal,for example, the UAV 130 may rotate the gimbal to adjust the orientationof the digital camera. The UAV 130 may also adjust the orientation ofthe entire UAV 130 about the pitch, roll, or yaw axes in order to changethe orientation of the digital camera.

In some examples, the speed at which the UAV 130 moves when a feature ofinterest (e.g., feature 111) is within a line of sight of the UAV 130,the speed at which the UAV 130 moves when no feature of interest iswithin a line of sight of the UAV 130, or a ratio of these two speedsmay be configurable via the user interface 123 that is displayed to anincident commander via the I/O devices 122. For example, the incidentcommander may specify a first speed at which the UAV 130 is to move whena feature of interest is within a line of sight of the UAV 130 and asecond speed at which the UAV 130 is to move when no feature of interestis within a line of sight of the UAV 130. Also, in some examples, theincident commander may specify a ratio of the first speed to the secondspeed (e.g., a ratio of ½ if the incident commander wishes for the UAV130 to move twice as fast along the flight trajectory 132 when nofeature of interest is visible). Any other ratio (e.g., ⅓, ¾, or someother ratio of the first speed to the second speed) may be used withoutdeparting from the spirit and scope of this disclosure. Once theincident commander has provided the first speed (or the second speed)and the ratio, the computing device 121 can readily calculate the secondspeed (or the first speed) using the ratio. Furthermore, in someexamples, the incident commander may assign different speeds at whichthe UAV 130 is to move along the flight trajectory 132 when differenttypes of features of interest are within a line of sight of the UAV 130,respectively.

The computing device 121 may be configured to detect (e.g., via thevideo-analytics computer program 121 a) when an event commences at afeature of interest (e.g., feature 111). In this example, suppose thatan event commences at the feature 111. The computing device 121identifies an event type for the event (e.g., via the video-analyticscomputer program 121 a) and determines a priority level for the eventbased on the event type and the feature type of the feature 111. Forexample, a hash table or another data structure associated with thefeature type of the feature 111 may map the event type to a prioritylevel. If the priority level satisfies a predefined condition (e.g.,meets a predefined threshold), the computing device 121 may determinethat a push notification should be used to alert the incident commanderor the public-safety responders who are carrying the mobile devices 140.

The computing device 121 may determine a format for the pushnotification based on the priority level. For example, if the prioritylevel indicates a high level of urgency, the format may call for devicesthat receive the push notification to emit loud sounds (e.g., simulatingalarm bells), vibrate (e.g., via haptic mechanisms), and display imagesof the event on a display (e.g., screens on the mobile devices 140 orthe electronic display 122 a). For example, the push notification mayinclude a still image extracted from the video stream that depicts thefeature 111 after commencement of the event. Similarly, the pushnotification may include a video clip extracted from the video streamthat depicts the feature 111 after commencement of the event. The pushnotification may also comprise a text message sent via a SimpleMessaging Service (SMS), a Multimedia Messaging Service (MMS), or someother type of messaging service. The push notification may also indicatethe event type or the feature type.

Furthermore, if the computing device 121 determines that the prioritylevel satisfies a condition (e.g., meets a threshold) and the incidentcommander is currently viewing video streams provided by other UAVs (notshown) in addition to the video stream provided by the UAV 130 inmultiple respective viewing areas in the user interface 123 on theelectronic display 122 a, the computing device 121 may increase the sizeof a viewing area for the video stream from the UAV 130 and decrease thesize of viewing areas for video streams from the other UAVs to furtherensure that the incident commander's attention is redirected to theviewing area for the video stream from the UAV 130.

In addition, in some examples, the priority level of the event type maysatisfy a condition that suggests an altitude of the flight trajectory132 should be adjusted so that the video stream provided by the digitalcamera coupled to the UAV 130 can provide a more direct view of thefeature 111. Thus, if the computing device 121 detects that the prioritylevel of the event satisfies the condition, the computing device 121 maysend a wireless signal to the UAV 130 instructing the UAV 130 to adjustan altitude of the flight trajectory 132 so that the flight trajectory132 will intersect with a line that (1) passes through the feature 111and (2) is normal to a plane that is parallel to a face of the structure110 on which the feature 111 is located. If the feature 111 is a door ora window, this may allow the incident commander to peer deeper into thestructure via the video feed after the adjustment is made when the UAV130 passes through the line while moving along the flight trajectory132.

In some examples, once the UAV 130 has circumnavigated the structure 110at least once such that views from each side of the structure 110 havebeen captured in the video stream provided by the UAV 130, the computingdevice 121 may further apply a photogrammetry computer program 121 b(e.g., COLMAP™, which is available through GitHub®; Meshroom™; MicMac™;or some other photogrammetry program) to the video stream or a pluralityof still images extracted therefrom to generate a digitalthree-dimensional (3D) model of the structure 110. The process ofapplying the photogrammetry computer program 121 b at the computingdevice 121 may involve transferring data from the video stream to theservers 170 via the wireless communication network 150 or the datanetwork 160. The computing device 121 may also make one or more functioncalls via Application Programming Interfaces (APIs) that are used by thephotogrammetry computer program 121 b and are sent to the servers 170.The servers 170 may perform computations dictated by the photogrammetrycomputer program 121 b and transfer results of those computations backto the computing device 121. Persons of ordinary skill in the art willunderstand that some computations triggered by the photogrammetrycomputer program 121 b may be performed using any combination ofprocessors and memory that are found in one or more of the computingdevice 121, the servers 170, and the UAV 130 without departing from thespirit and scope of this disclosure.

Once the digital 3D model of the structure 110 has been generated, thecomputing device 121 may cause the electronic display 122 a to render animage of the 3D model such that a region of the 3D model that depictsthe feature 111 is highlighted in the image. For example, the region ofthe 3D model that depicts the feature 111 may be highlighted by ablinking arrow that that overlays the image and points to the feature111. The region of the 3D model that depicts the feature 111 may also beenhanced with a highlight color (e.g., red, neon orange, or some othercolor that is likely to draw a viewer's attention).

The user interface 123 may allow an incident commander to zoom in/outand rotate the 3D model and cause an updated image to be rendered fromany viewing perspective that the incident commander wishes. This allowsthe incident commander to observe details of the structure 110 that arenot currently visible in the video stream provided by the UAV 130 (e.g.,details that are currently not within a line of sight of the UAV 130).If any changes to such details are observed during a subsequent lap ofthe UAV 130 around the structure 110 along the flight trajectory 132,the 3D model can be updated to reflect those changes and an updatedimage can be rendered accordingly.

If an event of interest commences at the feature 111 and a prioritylevel for the event satisfies a condition (e.g., meets a threshold), thecomputing device 121 may cause the electronic display 122 a to render anupdated image of the 3D model. The updated image of the 3D model mayillustrate the 3D model in a manner such that a face of the 3D model onwhich the feature 111 is found is aligned in parallel with the plane ofthe electronic display 122 a (e.g., a plane in which a flat screen ofthe electronic display lies). This may provide the incident commanderwith a better view of the feature 111 as the event of interest unfolds.

The computing device 121 may further cause the electronic display 122 ato render a graphical indication of the event type in the region of the3D model that depicts the feature 111. The graphical indication may be,for example, a blinking icon that partially overlays the region thatdepicts the feature 111. For example, suppose the feature 111 is awindow. If smoke begins to flow from the window, the blinking icon mayhave the appearance of a gray cloud. If fire becomes visible in thewindow, the blinking icon may have the appearance of a flame. If aperson becomes visible in the window, the blinking icon may have theappearance of a stick figure.

FIGS. 2 a-2 b illustrate how systems described in this disclosure mayoperate during a fire incident, according to one example. With respectto FIG. 2 a , suppose a fire department receives an emergency call thatreports a fire occurring at the house 200. Further suppose thatfirefighters are dispatched to the scene and that the drone 202 and thedrone 203 are deployed. The drone 202 and the drone 203 fly laps aroundthe house 200 and provide video streams from digital cameras that areattached to the drone 202 and the drone 203, respectively. A computingdevice 204 receives the video streams via wireless signals from thedrone 202 and the drone 203. The computing device 204 is communicativelyconnected to the electronic display 206 and the electronic display 208,which are viewed by an incident commander. The electronic display 206displays the video streams from the drone 202 and the drone 203 in theviewing area 212 and 213, respectively. The electronic display 208displays an image 210 of a 3D model of the house 200.

The computing device 204 applies a video-analytics computer program tothe video streams from the drones 202, 203 and determines that the door214 and the window 215 are instances of feature types (door and window)that are included in a list of feature types associated with theincident type “fire.” Therefore, the computing device 204 signals thedrone 202 to fly at a reduced speed when the door 214 or the window 215is within a line of sight of the drone 202. The computing device 204similarly signals the drone 203 to fly at a reduced speed when the door214 or the window 215 is within a line of sight of the drone 203. Thecomputing device 204 may further instruct the drone 202 to maintain thedoor 214 (or the window 215) within a field of view of the digitalcamera attached to the drone 202 when the door 214 (or the window 215)is within a line of sight of the drone 202. The computing device 204 mayinstruct the drone 203 similarly.

With respect to FIG. 2 b , suppose that a person 216 suddenly becomesvisible through the window 215. The computing device 204, whichcontinues to apply the video-analytics computer program to the videostreams provided by the drones 202, 203, detects the appearance of theperson 216 at the window 215 as an event that has commenced. Thecomputing device 204 determines the event type (“person detected”) anddetermines a priority level for the event based on the event type(“person detected”) and the feature type (“window”). Upon determiningthat the priority level for the event satisfies a condition (e.g., thepriority level is a number that meets a threshold), the computing device204 determines a format for a push notification based on the prioritylevel and sends the push notification to a mobile devices (not shown)that are associated with (e.g., carried by) firefighters at the sceneand the incident commander.

Furthermore, since the video stream from the drone 202 (shown in theviewing area 212) currently shows the window 215 and the video streamfrom the drone 203 does not, the computing device 204 causes theelectronic display 206 to increase the size of the viewing area 212 anddecrease the size of the viewing area 213 so that the incident commanderwill have larger view of the window 215. In addition, the computingdevice 204 causes the electronic display 208 to render an updated image211 of the 3D model. As shown, in the updated image 211, the face of thehouse 200 on which the window 215 is located is aligned with the planeof the electronic display 208. Furthermore, the computing device 204causes the electronic display 208 to render the icon 217 adjacent to thewindow 215 in the updated image 211.

Due to the push notifications and the other measures taken to direct theattention of the incident commander of the presence of the person 216 atthe window 215, the incident commander is immediately apprised of thesituation and instructs firefighters (not shown) to go to the window 215to help the person 216 escape from the house 200.

FIG. 3 provides an example list 300 of incident types and example lists310, 320, 330 of feature types, according to one example. The incidenttypes and feature types shown are merely illustrative; persons ofordinary skill in the art will recognize that other incident types andfeature types not shown in FIG. 3 may be used without departing from thespirit and scope of this disclosure.

As shown in the list 300, some examples of incident types may includefires, medical emergencies, gas leaks (e.g., of methane), spills ofhazardous materials, industrial accidents, trespassing incidents,burglaries, armed robberies (e.g., a bank robbery), auto thefts, massshootings, riots, and domestic disputes. However, the systems andmethods disclosed herein may be applied for many other types ofincidents to which emergency-response personnel may be deployed.

The list 310 provides examples of types of features that may be ofinterest during a fire incident. Doors and windows, for example, arefeatures through which egress into or out of a structure and maytherefore be of interest during a fire. People may try to escape thefire via such windows or doors, while firefighters may enter thestructure through windows or doors to look for people in need of rescueor to spray water at the fire from a location within the structure.Tanks of flammable substances (e.g., propane, gasoline, or butane) andgas meters are also of interest during a fire because they may fuel thefire or explode, thereby endangering firefighters and other peoplelocated at the scene of the fire. Fire hydrants may be of interestbecause they can provide water for fire hoses that are used toextinguish the fire. Fire escapes and ladders may be of interest becausepeople are likely to attempt to use them to escape from the fire.Weight-bearing beams may be of interest because their structuralintegrity may be compromised by the fire, thus causing ceilings or otherstructural elements to collapse and trap or injure firefighters. Powerlines may also be of interest because the fire may damage insulation orelectrical connections, thereby exposing live wires that may pose anelectrocution hazard for firefighters or a potential ignition source(e.g., due to sparks).

The list 320 provides examples of types of features that may be ofinterest during a burglary incident. Windows and doors may be ofinterest because they may be used by a burglar may to enter or exit astructure. Similarly, ventilation shafts may be of interest because aburglar may use them to enter or exit the structure—or simply as a placeto hide. Other potential hiding places, such as foliage, dumpsters, andsheds, may also be of interest. Automobiles may be of interest becausethey may be used as hiding places or as getaway vehicles.

The list 330 provides examples of feature types that may be of interestduring an auto theft incident. A garage entry/exit may be of interestbecause a suspect may attempt to flee through it with a stolen vehicle.A security gate (e.g., in a fence or a boundary wall) may also be ofinterest for similar reasons (e.g., a suspect may attempt to flee with astolen automobile through an open security gate). An automobile or atrailer may also be of interest, especially if the automobile or trailerhas been reported stolen (or is in the process of being stolen).

FIG. 4 provides an example list 400 of event types that may beassociated with some of the feature types (e.g., window and door) foundin the list 310, according to one example. The feature types and eventtypes shown are merely illustrative; persons of ordinary skill in theart will recognize that other event types, feature types, and priorityschemes not shown in FIG. 4 may be used without departing from thespirit and scope of this disclosure.

As shown in the list 400, some events that may occur at a door (or awindow) during a fire incident the detection of smoke, fire, a person,or a blockage at the door (or the window). The list 400 also includes anexample priority level for each event type. In this example, the higherthe priority level, the greater the urgency of the event. Thus, in thelist 400, the detection of a person at a door or a window has a higherpriority level than any of the other event types shown. The detection ofsmoke at a door or window, by contrast, has a lower priority level thanany of the other event types shown. The detection of fire has a higherpriority level higher than that of the detection of smoke; the detectionof a blockage has a higher priority level than that of the detection offire.

As explained with respect to FIG. 1 and in other portions of thisdisclosure, the priority levels for the event types may be used to helpdetermine which format to use for a push notification to notify anincident commander or other public-safety responders when events occurat features of interest.

FIG. 5 illustrates functionality 500 for systems disclosed herein,according to one illustrative and non-limiting example. Thefunctionality 500 does not have to be performed in the exact sequenceshown. Also, various blocks may be performed in parallel rather than insequence. Accordingly, the elements of the functionality 500 arereferred to herein as “blocks” rather than “steps.” The functionality500 can be executed as instructions on a machine (e.g., by one or moreprocessors), where the instructions are stored on a transitory ornon-transitory computer-readable storage medium. While only five blocksare shown in the functionality 500, the functionality 500 may compriseother actions described herein. Also, in some examples, some of theblocks shown in the functionality 500 may be omitted without departingfrom the spirit and scope of this disclosure.

As shown in block 510, the functionality 500 includes receiving, at acomputing device via a first wireless signal from an unmanned airvehicle (UAV), a video stream generated by a digital camera coupled tothe UAV, wherein the video stream provides a view of a structure wherean incident is occurring.

As shown in block 520, the functionality 500 includes applying avideo-analytics computer program to the video stream to identifyfeatures associated with the structure.

As shown in block 530, the functionality 500 includes identifying a listof feature types associated with a type of the incident.

As shown in block 540, the functionality 500 includes determining thatone of the features is an instance of a feature type included in thelist and is therefore a feature of interest.

As shown in block 550, the functionality 500 includes transmitting asecond wireless signal to the UAV instructing the UAV to reduce a speedat which the UAV moves along a flight trajectory that circumnavigatesthe structure when the feature of interest is within a line of sight ofthe UAV. The second wireless signal may further instruct the UAV toincrease the speed at which the UAV moves along the flight trajectorywhen the feature of interest is not within the line of sight of the UAV.In addition, second wireless signal may further instruct the UAV toadjust an orientation of the digital camera when the feature of interestis within the line of sight of the UAV to maintain the feature ofinterest within a field of view (FOV) of the digital camera.

The functionality 500 may further include detecting, based on the videostream, that an event has commenced where the feature of interest islocated on the structure; identifying an event type for the event;determining a priority level for the event based on the feature type andthe event type; determining a format for a push notification based onthe priority level; and sending the push notification to a mobile deviceto notify a user about the event.

The push notification may indicate the event type and the feature type.Furthermore, the push notification may comprise a still image extractedfrom the video stream. The still image may depict the feature ofinterest after commencement of the event. In addition or alternatively,the push notification may also comprise a video clip extracted from thevideo stream. The video clip may depict the feature of interest aftercommencement of the event. In addition or alternatively, the pushnotification may comprise a text message or an audio message thatindicates the event type and the feature type.

The functionality 500 may further include, upon detecting that thepriority level satisfies a condition, sending a third wireless signal tothe UAV instructing the UAV to adjust an altitude of the flighttrajectory so that the flight trajectory intersects with a line that isnormal to a plane that is parallel to a face of the structure on whichthe feature of interest is located. The line passes through the featureof interest.

The functionality 500 may further include, upon determining that thepriority level satisfies a condition, increasing a size of a firstviewing area for the video stream on an electronic display that iscommunicatively connected to the computing device; and reducing a sizeof a second viewing area on the electronic display for a second videostream received at the computing device.

The functionality 500 may further include applying a photogrammetryprogram to a plurality of still images extracted from the video streamto generate a digital three-dimensional (3D) model of the structure; andrendering an image of the 3D model on an electronic display such that aregion of the 3D model that depicts the feature of interest ishighlighted in the image. Furthermore, the functionality 500 may includedetecting, based on the video stream, that an event has commenced wherethe feature of interest is located on the structure; identifying anevent type for the event; determining a priority level for the eventbased on the feature of interest and the event type; upon determiningthat the priority level satisfies a condition, rendering an updatedimage of the 3D model on the electronic display such that a face of the3D model is aligned in parallel with a plane of the electronic displayin the updated image, wherein the region of the 3D model that depictsthe feature of interest is located on the face; and rendering agraphical indication of the event type on the electronic display in theregion of the 3D model that depicts the feature of interest.

FIG. 6 is a schematic diagram that illustrates a computing device 600according to some examples described in the present disclosure. Thecomputing device 600 may be, for example, a laptop computer or a desktopcomputer located in the public-safety response vehicle 120 (e.g., as thecomputing device 121), circuitry embedded in one or more of the mobiledevices 140, one or more of the servers 170, circuitry embedded in theUAV 130, or at some other location in the wireless communication network150 or the data network 160. As shown in FIG. 6 , the computing device600 includes a communications unit 602 coupled to a common data andaddress bus 617 of a processing unit 603. In some examples, thecomputing device 600 may also include an input unit (e.g., keypad,pointing device, touch-sensitive surface, etc.) 606 and an electronicdisplay 605, each coupled to be in communication with the processingunit 603.

A microphone 620 may be present for capturing audio at a same time as animage or video that is further encoded by processing unit 603 andtransmitted as an audio/video stream data by the communication unit 602to other devices. A speaker 622 may be present for reproducing audiothat is sent to the computing device 600 via the communication unit 602,or may be used to play back alert tones or other types of pre-recordedaudio (e.g., as part of a push notification).

The processing unit 603 may include a code Read-Only Memory (ROM) 612coupled to the common data and address bus 617 for storing data forinitializing system components. The processing unit 603 may furtherinclude a microprocessor 613 coupled, by the common data and address bus617, to a Random Access Memory (RAM) 604 and a static memory 616.

The communications unit 602 may include one or more wired or wirelessinput/output (I/O) interfaces 609 that are configurable to communicatewith other devices, such as a portable radio, tablet, wireless RAN, orvehicular transceiver.

The communications unit 602 may include one or more transceivers 608that are wireless transceivers, such as a Digital Mobile Radio (DMR)transceiver, a P25 transceiver, a Bluetooth® transceiver, a Wi-Fitransceiver, an LTE transceiver, a WiMAX transceiver, a 5G transceiver,or another type of wireless transceiver configurable to communicate viaa wireless radio network. The communications unit 602 may additionallyor alternatively include one or more transceivers 608 that are wirelinetransceivers, such as an Ethernet transceiver, a Universal Serial Bus(USB) transceiver, or a similar transceiver configurable to communicatevia a twisted pair wire, a coaxial cable, a fiber-optic link, or asimilar physical connection to a wireline network. The transceiver 608is also coupled to a combined modulator/demodulator 610.

The microprocessor 613 has ports for coupling to the input unit 606 andmicrophone 620, and to the electronic display 605 and speaker 622.Static memory 616 may store operating code 625 for the microprocessor613 that, when executed, performs one or more of the blocks set forth inFIG. 5 .

Static memory 616 may comprise, for example, a hard-disk drive (HDD), anoptical disk drive such as a compact disk (CD) drive or digitalversatile disk (DVD) drive, a solid state drive (SSD), a flash memorydrive, or some other type of drive.

EXAMPLES

The following additional examples are included below to highlightseveral aspects of the systems and processes described herein. However,the scope of the disclosure is not limited to these additional examplesor the other examples described herein.

Example 1 includes a system comprising: one or more processors; and amemory containing instructions thereon which, when executed by the oneor more processors, cause the processors to perform a set of actionscomprising: receiving, at a computing device via a first wireless signalfrom an unmanned air vehicle (UAV), a video stream generated by adigital camera coupled to the UAV, wherein the video stream provides aview of a structure where an incident is occurring; applying avideo-analytics computer program to the video stream to identifyfeatures associated with the structure; identifying a list of featuretypes associated with a type of the incident; determining that one ofthe features is an instance of a feature type included in the list andis therefore a feature of interest; and transmitting a second wirelesssignal to the UAV instructing the UAV to reduce a speed at which the UAVmoves along a flight trajectory that circumnavigates the structure whenthe feature of interest is within a line of sight of the UAV.

Example 2 includes the system of example 1, wherein the second wirelesssignal further instructs the UAV to increase the speed at which the UAVmoves along the flight trajectory when the feature of interest is notwithin the line of sight of the UAV.

Example 3 includes the system of example 1 or 2, wherein the secondwireless signal further instructs the UAV to adjust an orientation ofthe digital camera when the feature of interest is within the line ofsight of the UAV to maintain the feature of interest within a field ofview (FOV) of the digital camera.

Example 4 includes the system of example 1, 2, or 3, wherein the set ofactions further comprises: detecting, based on the video stream, that anevent has commenced where the feature of interest is located on thestructure; identifying an event type for the event; determining apriority level for the event based on the feature type and the eventtype; determining a format for a push notification based on the prioritylevel; and sending the push notification to a mobile device to notify auser about the event.

Example 5 includes the system of example 4, wherein the pushnotification comprises one or more of: a still image extracted from thevideo stream, wherein the still image depicts the feature of interestafter commencement of the event; a video clip extracted from the videostream, wherein the video clip depicts the feature of interest aftercommencement of the event; a text message indicating the event type orthe feature type; or an audio message indicating the event type or thefeature type.

Example 6 includes the system of example 4 or 5, wherein the set ofactions further comprises: upon detecting that the priority levelsatisfies a condition, sending a third wireless signal to the UAVinstructing the UAV to adjust an altitude of the flight trajectory sothat the flight trajectory intersects with a line that is normal to aplane that is parallel to a face of the structure on which the featureof interest is located, wherein the line passes through the feature ofinterest.

Example 7 includes the system of example 4, 5, or 6, wherein the set ofactions further comprises: upon determining that the priority levelsatisfies a condition, increasing a size of a first viewing area for thevideo stream on an electronic display that is communicatively connectedto the computing device; and reducing a size of a second viewing area onthe electronic display for a second video stream received at thecomputing device.

Example 8 includes the system of example 1, 2, 3, 4, 5, 6, or 7, whereinthe set of actions further comprises: applying a photogrammetry programto a plurality of still images extracted from the video stream togenerate a digital three-dimensional (3D) model of the structure; andrendering an image of the 3D model on an electronic display such that aregion of the 3D model that depicts the feature of interest ishighlighted in the image.

Example 9 includes the system of example 8, wherein the set of actionsfurther comprises: detecting, based on the video stream, that an eventhas commenced where the feature of interest is located on the structure;identifying an event type for the event; determining a priority levelfor the event based on the feature of interest and the event type; upondetermining that the priority level satisfies a condition, rendering anupdated image of the 3D model on the electronic display such that a faceof the 3D model is aligned in parallel with a plane of the electronicdisplay in the updated image, wherein the region of the 3D model thatdepicts the feature of interest is located on the face; and rendering agraphical indication of the event type on the electronic display in theregion of the 3D model that depicts the feature of interest.

Example 10 includes a method comprising: receiving, at a computingdevice via a first wireless signal from an unmanned air vehicle (UAV), avideo stream generated by a digital camera coupled to the UAV, whereinthe video stream provides a view of a structure where an incident isoccurring; applying a video-analytics computer program to the videostream to identify features associated with the structure; identifying alist of feature types associated with a type of the incident;determining that one of the features is an instance of a feature typeincluded in the list and is therefore a feature of interest; andtransmitting a second wireless signal to the UAV instructing the UAV toreduce a speed at which the UAV moves along a flight trajectory thatcircumnavigates the structure when the feature of interest is within aline of sight of the UAV.

Example 11 includes the method of example 10, wherein the secondwireless signal further instructs the UAV to increase the speed at whichthe UAV moves along the flight trajectory when the feature of interestis not within the line of sight of the UAV.

Example 12 includes the method of example 10 or 11, wherein the secondwireless signal further instructs the UAV to adjust an orientation ofthe digital camera when the feature of interest is within the line ofsight of the UAV to maintain the feature of interest within a field ofview (FOV) of the digital camera.

Example 13 includes the method of example 10, 11, or 12, the methodfurther comprising: detecting, based on the video stream, that an eventhas commenced where the feature of interest is located on the structure;identifying an event type for the event; determining a priority levelfor the event based on the feature type and the event type; determininga format for a push notification based on the priority level; andsending the push notification to a mobile device to notify a user aboutthe event.

Example 14 includes the method of example 13, wherein the pushnotification comprises one or more of: a still image extracted from thevideo stream, wherein the still image depicts the feature of interestafter commencement of the event; a video clip extracted from the videostream, wherein the video clip depicts the feature of interest aftercommencement of the event; a text message indicating the event type orthe feature type; or an audio message indicating the event type or thefeature type.

Example 15 includes the method of example 13 or 14, the method furthercomprising: upon detecting that the priority level satisfies acondition, sending a third wireless signal to the UAV instructing theUAV to adjust an altitude of the flight trajectory so that the flighttrajectory intersects with a line that is normal to a plane that isparallel to a face of the structure on which the feature of interest islocated, wherein the line passes through the feature of interest.

Example 16 includes the method of example 13, 14, or 15, the methodfurther comprising: upon determining that the priority level satisfies acondition, increasing a size of a first viewing area for the videostream on an electronic display that is communicatively connected to thecomputing device; and reducing a size of a second viewing area on theelectronic display for a second video stream received at the computingdevice.

Example 17 includes he method of claim 10, 11, 12, 13, 14, 15, or 16,the method further comprising: applying a photogrammetry program to aplurality of still images extracted from the video stream to generate adigital three-dimensional (3D) model of the structure; and rendering animage of the 3D model on an electronic display such that a region of the3D model that depicts the feature of interest is highlighted in theimage.

Example 18 includes the method of example 17, the method furthercomprising: detecting, based on the video stream, that an event hascommenced where the feature of interest is located on the structure;identifying an event type for the event; determining a priority levelfor the event based on the feature of interest and the event type; upondetermining that the priority level satisfies a condition, rendering anupdated image of the 3D model on the electronic display such that a faceof the 3D model is aligned in parallel with a plane of the electronicdisplay in the updated image, wherein the region of the 3D model thatdepicts the feature of interest is located on the face; and rendering agraphical indication of the event type on the electronic display in theregion of the 3D model that depicts the feature of interest.

Example 19 includes a non-transitory computer-readable storage mediumcontaining instructions that, when executed by one or more processors,perform a set of actions comprising: receiving, at a computing devicevia a first wireless signal from an unmanned air vehicle (UAV), a videostream generated by a digital camera coupled to the UAV, wherein thevideo stream provides a view of a structure where an incident isoccurring; applying a video-analytics computer program to the videostream to identify features associated with the structure; identifying alist of feature types associated with a type of the incident;determining that one of the features is an instance of a feature typeincluded in the list and is therefore a feature of interest; andtransmitting a second wireless signal to the UAV instructing the UAV toreduce a speed at which the UAV moves along a flight trajectory thatcircumnavigates the structure when the feature of interest is within aline of sight of the UAV.

Example 20 includes the non-transitory computer-readable storage mediumof example 19, wherein the second wireless signal further instructs theUAV to increase the speed at which the UAV moves along the flighttrajectory when the feature of interest is not within the line of sightof the UAV.

Example 21 includes the non-transitory computer-readable storage mediumof example 19 or 20, wherein the second wireless signal furtherinstructs the UAV to adjust an orientation of the digital camera whenthe feature of interest is within the line of sight of the UAV tomaintain the feature of interest within a field of view (FOV) of thedigital camera.

Example 22 includes the non-transitory computer-readable storage mediumof example 19, 20, or 21, wherein the set of actions further comprises:detecting, based on the video stream, that an event has commenced wherethe feature of interest is located on the structure; identifying anevent type for the event; determining a priority level for the eventbased on the feature type and the event type; determining a format for apush notification based on the priority level; and sending the pushnotification to a mobile device to notify a user about the event.

Example 23 includes the non-transitory computer-readable storage mediumof example 22, wherein the push notification comprises one or more of: astill image extracted from the video stream, wherein the still imagedepicts the feature of interest after commencement of the event; a videoclip extracted from the video stream, wherein the video clip depicts thefeature of interest after commencement of the event; a text messageindicating the event type or the feature type; or an audio messageindicating the event type or the feature type.

Example 24 includes the non-transitory computer-readable storage mediumof example 22 or 23, wherein the set of actions further comprises: upondetecting that the priority level satisfies a condition, sending a thirdwireless signal to the UAV instructing the UAV to adjust an altitude ofthe flight trajectory so that the flight trajectory intersects with aline that is normal to a plane that is parallel to a face of thestructure on which the feature of interest is located, wherein the linepasses through the feature of interest.

Example 25 includes the non-transitory computer-readable storage mediumof example 22, 23, or 24, wherein the set of actions further comprises:upon determining that the priority level satisfies a condition,increasing a size of a first viewing area for the video stream on anelectronic display that is communicatively connected to the computingdevice; and reducing a size of a second viewing area on the electronicdisplay for a second video stream received at the computing device.

Example 26 includes the non-transitory computer-readable storage mediumof example 19, 20, 21, 22, 23, 24, or 25, wherein the set of actionsfurther comprises: applying a photogrammetry program to a plurality ofstill images extracted from the video stream to generate a digitalthree-dimensional (3D) model of the structure; and rendering an image ofthe 3D model on an electronic display such that a region of the 3D modelthat depicts the feature of interest is highlighted in the image.

Example 27 includes the non-transitory computer-readable storage mediumof example 26, wherein the set of actions further comprises: detecting,based on the video stream, that an event has commenced where the featureof interest is located on the structure; identifying an event type forthe event; determining a priority level for the event based on thefeature of interest and the event type; upon determining that thepriority level satisfies a condition, rendering an updated image of the3D model on the electronic display such that a face of the 3D model isaligned in parallel with a plane of the electronic display in theupdated image, wherein the region of the 3D model that depicts thefeature of interest is located on the face; and rendering a graphicalindication of the event type on the electronic display in the region ofthe 3D model that depicts the feature of interest.

As should be apparent from this detailed description above, theoperations and functions of the electronic computing device aresufficiently complex as to require their implementation on a computersystem, and cannot be performed, as a practical matter, in the humanmind. Electronic computing devices such as set forth herein areunderstood as requiring and providing speed and accuracy and complexitymanagement that are not obtainable by human mental steps, in addition tothe inherently digital nature of such operations (e.g., a human mindcannot interface directly with RAM or other digital storage, cannottransmit or receive electronic messages, electronically encoded video,electronically encoded audio, etc., among other features and functionsset forth herein).

In the foregoing specification, specific embodiments have beendescribed. However, one of ordinary skill in the art appreciates thatvarious modifications and changes can be made without departing from thescope of the invention as set forth in the claims below. Accordingly,the specification and figures are to be regarded in an illustrativerather than a restrictive sense, and all such modifications are intendedto be included within the scope of present teachings. The benefits,advantages, solutions to problems, and any element(s) that may cause anybenefit, advantage, or solution to occur or become more pronounced arenot to be construed as a critical, required, or essential features orelements of any or all the claims. The invention is defined solely bythe appended claims including any amendments made during the pendency ofthis application and all equivalents of those claims as issued.

Moreover in this document, relational terms such as first and second,top and bottom, and the like may be used solely to distinguish oneentity or action from another entity or action without necessarilyrequiring or implying any actual such relationship or order between suchentities or actions. The terms “comprises,” “comprising,” “has,”“having,” “includes,” “including,” “contains,” “containing,” or anyother variation thereof, are intended to cover a non-exclusiveinclusion, such that a process, method, article, or apparatus thatcomprises, has, includes, contains a list of elements does not includeonly those elements but may include other elements not expressly listedor inherent to such process, method, article, or apparatus. An elementproceeded by “comprises . . . a,” “has . . . a,” “includes . . . a,” or“contains . . . a” does not, without more constraints, preclude theexistence of additional identical elements in the process, method,article, or apparatus that comprises, has, includes, or contains theelement. The terms “a” and “an” are defined as one or more unlessexplicitly stated otherwise herein. The terms “substantially,”“essentially,” “approximately,” “about,” or any other version thereof,are defined as being close to as understood by one of ordinary skill inthe art, and in one non-limiting embodiment the term is defined to bewithin 10%, in another embodiment within 5%, in another embodimentwithin 1%, and in another embodiment within 0.5%. The term “one of,”without a more limiting modifier such as “only one of,” and when appliedherein to two or more subsequently defined options such as “one of A andB” should be construed to mean an existence of any one of the options inthe list alone (e.g., A alone or B alone) or any combination of two ormore of the options in the list (e.g., A and B together).

A device or structure that is “configured” in a certain way isconfigured in at least that way, but may also be configured in ways thatare not listed.

The terms “coupled,” “coupling,” or “connected” as used herein can haveseveral different meanings depending on the context in which these termsare used. For example, the terms coupled, coupling, or connected canhave a mechanical or electrical connotation. For example, as usedherein, the terms coupled, coupling, or connected can indicate that twoelements or devices are directly connected to one another or connectedto one another through intermediate elements or devices via anelectrical element, electrical signal or a mechanical element dependingon the particular context.

It will be appreciated that some embodiments may be comprised of one ormore generic or specialized processors (or “processing devices”) such asmicroprocessors, digital signal processors, customized processors andfield programmable gate arrays (FPGAs) and unique stored programinstructions (including both software and firmware) that control the oneor more processors to implement, in conjunction with certainnon-processor circuits, some, most, or all of the functions of themethod and/or apparatus described herein. Alternatively, some or allfunctions could be implemented by a state machine that has no storedprogram instructions, or in one or more application specific integratedcircuits (ASICs), in which each function or some combinations of certainof the functions are implemented as custom logic. Of course, acombination of the two approaches could be used.

Moreover, an embodiment can be implemented as a computer-readablestorage medium having computer readable code stored thereon forprogramming a computer (e.g., comprising a processor) to perform amethod as described and claimed herein. Any suitable computer-usable orcomputer readable medium may be utilized. Examples of suchcomputer-readable storage mediums include, but are not limited to, ahard disk, a CD-ROM, an optical storage device, a magnetic storagedevice, a ROM (Read Only Memory), a PROM (Programmable Read OnlyMemory), an EPROM (Erasable Programmable Read Only Memory), an EEPROM(Electrically Erasable Programmable Read Only Memory) and a Flashmemory. In the context of this document, a computer-usable orcomputer-readable medium may be any medium that can contain, store,communicate, propagate, or transport the program for use by or inconnection with the instruction execution system, apparatus, or device.

Further, it is expected that one of ordinary skill, notwithstandingpossibly significant effort and many design choices motivated by, forexample, available time, current technology, and economicconsiderations, when guided by the concepts and principles disclosedherein will be readily capable of generating such software instructionsand programs and ICs with minimal experimentation. For example, computerprogram code for carrying out operations of various example embodimentsmay be written in an object oriented programming language such as Java,Smalltalk, C++, Python, or the like. However, the computer program codefor carrying out operations of various example embodiments may also bewritten in conventional procedural programming languages, such as the“C” programming language or similar programming languages. The programcode may execute entirely on a computer, partly on the computer, as astand-alone software package, partly on the computer and partly on aremote computer or server or entirely on the remote computer or server.In the latter scenario, the remote computer or server may be connectedto the computer through a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).

The Abstract of the Disclosure is provided to allow the reader toquickly ascertain the nature of the technical disclosure. It issubmitted with the understanding that it will not be used to interpretor limit the scope or meaning of the claims. In addition, in theforegoing Detailed Description, it can be seen that various features aregrouped together in various embodiments for the purpose of streamliningthe disclosure. This method of disclosure is not to be interpreted asreflecting an intention that the claimed embodiments require morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive subject matter lies in less than allfeatures of a single disclosed embodiment. Thus the following claims arehereby incorporated into the Detailed Description, with each claimstanding on its own as a separately claimed subject matter.

What is claimed is:
 1. A system comprising: one or more processors; anda memory containing instructions thereon which, when executed by the oneor more processors, cause the processors to perform a set of actionscomprising: receiving, at a computing device via a first wireless signalfrom an unmanned air vehicle (UAV), a video stream generated by adigital camera coupled to the UAV, wherein the video stream provides aview of a structure where an incident is occurring; applying avideo-analytics computer program to the video stream to identifyfeatures associated with the structure; identifying a list of featuretypes associated with a type of the incident; determining that one ofthe features is an instance of a feature type included in the list andis therefore a feature of interest; and transmitting a second wirelesssignal to the UAV instructing the UAV to reduce a speed at which the UAVmoves along a flight trajectory that circumnavigates the structure whenthe feature of interest is within a line of sight of the UAV.
 2. Thesystem of claim 1, wherein the second wireless signal further instructsthe UAV to increase the speed at which the UAV moves along the flighttrajectory when the feature of interest is not within the line of sightof the UAV.
 3. The system of claim 1, wherein the second wireless signalfurther instructs the UAV to adjust an orientation of the digital camerawhen the feature of interest is within the line of sight of the UAV tomaintain the feature of interest within a field of view (FOV) of thedigital camera.
 4. The system of claim 1, wherein the set of actionsfurther comprises: detecting, based on the video stream, that an eventhas commenced where the feature of interest is located on the structure;identifying an event type for the event; determining a priority levelfor the event based on the feature type and the event type; determininga format for a push notification based on the priority level; andsending the push notification to a mobile device to notify a user aboutthe event.
 5. The system of claim 4, wherein the push notificationcomprises one or more of: a still image extracted from the video stream,wherein the still image depicts the feature of interest aftercommencement of the event; a video clip extracted from the video stream,wherein the video clip depicts the feature of interest aftercommencement of the event; a text message indicating the event type orthe feature type; or an audio message indicating the event type or thefeature type.
 6. The system of claim 4, wherein the set of actionsfurther comprises: upon detecting that the priority level satisfies acondition, sending a third wireless signal to the UAV instructing theUAV to adjust an altitude of the flight trajectory so that the flighttrajectory intersects with a line that is normal to a plane that isparallel to a face of the structure on which the feature of interest islocated, wherein the line passes through the feature of interest.
 7. Thesystem of claim 4, wherein the set of actions further comprises: upondetermining that the priority level satisfies a condition, increasing asize of a first viewing area for the video stream on an electronicdisplay that is communicatively connected to the computing device; andreducing a size of a second viewing area on the electronic display for asecond video stream received at the computing device.
 8. The system ofclaim 1, wherein the set of actions further comprises: applying aphotogrammetry program to a plurality of still images extracted from thevideo stream to generate a digital three-dimensional (3D) model of thestructure; and rendering an image of the 3D model on an electronicdisplay such that a region of the 3D model that depicts the feature ofinterest is highlighted in the image.
 9. The system of claim 8, whereinthe set of actions further comprises: detecting, based on the videostream, that an event has commenced where the feature of interest islocated on the structure; identifying an event type for the event;determining a priority level for the event based on the feature ofinterest and the event type; upon determining that the priority levelsatisfies a condition, rendering an updated image of the 3D model on theelectronic display such that a face of the 3D model is aligned inparallel with a plane of the electronic display in the updated image,wherein the region of the 3D model that depicts the feature of interestis located on the face; and rendering a graphical indication of theevent type on the electronic display in the region of the 3D model thatdepicts the feature of interest.
 10. A method comprising: receiving, ata computing device via a first wireless signal from an unmanned airvehicle (UAV), a video stream generated by a digital camera coupled tothe UAV, wherein the video stream provides a view of a structure wherean incident is occurring; applying a video-analytics computer program tothe video stream to identify features associated with the structure;identifying a list of feature types associated with a type of theincident; determining that one of the features is an instance of afeature type included in the list and is therefore a feature ofinterest; and transmitting a second wireless signal to the UAVinstructing the UAV to reduce a speed at which the UAV moves along aflight trajectory that circumnavigates the structure when the feature ofinterest is within a line of sight of the UAV.
 11. The method of claim10, wherein the second wireless signal further instructs the UAV toincrease the speed at which the UAV moves along the flight trajectorywhen the feature of interest is not within the line of sight of the UAV.12. The method of claim 10, wherein the second wireless signal furtherinstructs the UAV to adjust an orientation of the digital camera whenthe feature of interest is within the line of sight of the UAV tomaintain the feature of interest within a field of view (FOV) of thedigital camera.
 13. The method of claim 10, further comprising:detecting, based on the video stream, that an event has commenced wherethe feature of interest is located on the structure; identifying anevent type for the event; determining a priority level for the eventbased on the feature type and the event type; determining a format for apush notification based on the priority level; and sending the pushnotification to a mobile device to notify a user about the event. 14.The method of claim 13, wherein the push notification comprises one ormore of: a still image extracted from the video stream, wherein thestill image depicts the feature of interest after commencement of theevent; a video clip extracted from the video stream, wherein the videoclip depicts the feature of interest after commencement of the event; atext message indicating the event type or the feature type; or an audiomessage indicating the event type or the feature type.
 15. The method ofclaim 13, further comprising: upon detecting that the priority levelsatisfies a condition, sending a third wireless signal to the UAVinstructing the UAV to adjust an altitude of the flight trajectory sothat the flight trajectory intersects with a line that is normal to aplane that is parallel to a face of the structure on which the featureof interest is located, wherein the line passes through the feature ofinterest.
 16. The method of claim 13, further comprising: upondetermining that the priority level satisfies a condition, increasing asize of a first viewing area for the video stream on an electronicdisplay that is communicatively connected to the computing device; andreducing a size of a second viewing area on the electronic display for asecond video stream received at the computing device.
 17. The method ofclaim 10, further comprising: applying a photogrammetry program to aplurality of still images extracted from the video stream to generate adigital three-dimensional (3D) model of the structure; and rendering animage of the 3D model on an electronic display such that a region of the3D model that depicts the feature of interest is highlighted in theimage.
 18. The method of claim 17, further comprising: detecting, basedon the video stream, that an event has commenced where the feature ofinterest is located on the structure; identifying an event type for theevent; determining a priority level for the event based on the featureof interest and the event type; upon determining that the priority levelsatisfies a condition, rendering an updated image of the 3D model on theelectronic display such that a face of the 3D model is aligned inparallel with a plane of the electronic display in the updated image,wherein the region of the 3D model that depicts the feature of interestis located on the face; and rendering a graphical indication of theevent type on the electronic display in the region of the 3D model thatdepicts the feature of interest.
 19. A non-transitory computer-readablestorage medium containing instructions that, when executed by one ormore processors, perform a set of actions comprising: receiving, at acomputing device via a first wireless signal from an unmanned airvehicle (UAV), a video stream generated by a digital camera coupled tothe UAV, wherein the video stream provides a view of a structure wherean incident is occurring; applying a video-analytics computer program tothe video stream to identify features associated with the structure;identifying a list of feature types associated with a type of theincident; determining that one of the features is an instance of afeature type included in the list and is therefore a feature ofinterest; and transmitting a second wireless signal to the UAVinstructing the UAV to reduce a speed at which the UAV moves along aflight trajectory that circumnavigates the structure when the feature ofinterest is within a line of sight of the UAV.
 20. The non-transitorycomputer-readable storage medium of claim 19, wherein the set of actionsfurther comprises: detecting, based on the video stream, that an eventhas commenced where the feature of interest is located on the structure;identifying an event type for the event; determining a priority levelfor the event based on the feature type and the event type; determininga format for a push notification based on the priority level; andsending the push notification to a mobile device to notify a user aboutthe event.